# Lopez Valenzuela Marco Antonio
@max.s
@encontrar el maximo de una lista de numeros.

@r1 - es usado para guardas los datos.
@r0 - es usado para el dato mas grande.
@r3 - es usado para el dato que se acaba de guardar.

.section .data
numbers: @es la informacion que se va estar utilizando.

.long 3,67,222,45,75,54,34,44,33,22,11,66,0
.global _start

_start:
ldr %r1, =numbers @inicializar r1 para empezar a guardar los numeros
ldr %r3, [%r1] @carga r3 con el primer numero
mov %r0, %r3 @al principio el primer numero debe ser el max

loop:
cmp %r3, $0 @checa si r3 tiene cero.
beq exit @si si, exit
ldr %r3, [%r1,#4]! @carga el siguiente numero a r3
cmp %r3, %r0 @compara r0 con r3.
ble loop @se va al principio de r3 si r3<=r0
mov %r0, %r3 @si no, pone r3 en r1
bal loop @se va al principio del ciclo

exit: @el valor maximo ahora es r0
mov %r7,$1 @prepara para salir
svc $0 @ despierta el kernel
.end @termina el codigo.


